Sets of computing resources in a distributed computing system are often grouped into resource subsystems. The resource subsystems are often defined by physical and/or logical boundaries such as nodes, clusters, regions, sites, data centers, or other management areas. For example, one resource subsystem might comprise a logically bounded set of nodes associated with a certain department of an enterprise, while another resource subsystem might be associated with a particular physical property (e.g., site, data center) or geographical location (e.g., region). Modern computing systems might be composed of many physically- or logically-bounded resource subsystems that comprise many nodes (or more) that in turn support as many as several thousand (or more) autonomous virtualized entities (VEs). The VEs that are deployed in distributed systems might be virtual machines (VMs) and/or executable containers in any blend or combination.
Furthermore, scaling in these modern computing systems has evolved to include scaling by increasing the number of clusters that are deployed into existing and/or new sites and/or regions. For example, multiple clusters associated with multiple respective resource owners (e.g., enterprises) might be deployed into a certain physical data center located at a particular site. As another example, multiple clusters from a single resource owner might be deployed into a certain logical availability zone. Multiple availability zones might in turn be logically organized into a computing region (e.g., US-West). In still other cases, various computing clusters might be available through the Internet as private and/or public cloud resources. In any of these examples or cases, the set of computing clusters that might be configured to communicate with any other cluster or clusters can by highly dynamic.
Unfortunately, management of the numerous resources distributed across or between computing clusters in a multi-cluster configuration can present challenges. For example, a resource owner might desire to manage (e.g., create, update, delete, monitor, etc.) a set of inter- or intra-cluster resources from a single centralized access point (e.g., resource management portal, multi-region access point).
One approach to providing resource management functionality at the centralized access point is to replicate the entity data describing the resources at the centralized access point. However, replication of data for large numbers and/or large volumes of resources can consume significant storage resources. Further, since the centralized access point covers multiple logical levels (e.g., a regional level, an availability zone level, a cluster level), any of which levels might be logically or geographically remote from the underlying resources, the replication of the entity data can consume significant storage I/O resources and/or network I/O resources at any or all of these levels. In the case of certain entity modification operations (e.g., create, update, delete, etc.), the foregoing approaches replicate large amounts of entity data, thus consuming more and more resources as time goes on. What is needed is a technological solution for efficiently managing resources from a centralized access point in a highly dynamic multi-cluster computing environment, yet without replicating large amounts of entity data.